卧龙小说网> > > 1.5.1节练习

1.5.1节练习

1.5.1节练习

1.5.1节练习

练习1.20:在网站http://www.informit.com/title/o321714113上,第1章的代码目录中包含了头文件Sales_item.h。将它拷贝到你自己的工作目录(源码文件所在的文件夹)中。用它编写一个程序,读取一组书籍销售记录,将每条记录打印到标准输出上。

出题思路:练习如何使用其他人定义的类来创建、使用对象。

解答:

#include <iostream>

#include "Sales_item.h"

int main()

{

Sales_item book;

std::cout << "请输入销售记录: " << std::endl;

while (std::cin >> book){

std::cout << "ISBN、售出本数、销售额和平均售价为" << book << std::endl;

}

return 0;

}

练习1.21:编写程序,读取两个ISBN相同的Sales_item对象,输出它们的和。

出题思路:类对象的更复杂的使用,利用类接口进行运算。

解答:

#include <iostream>

#include "Sales_item.h"

int main()

{

Sales_item trans1 trans2;

std::cout << "请输入两条ISBN相同的销售记录:" << std::endl;

std::cin >> trans1 >> trans2;

if (compareIsbn(trans1 trans2))

std::cout << "汇总信息:ISBN、售出本数、销售额和平均售价为" << trans1 + trans2 << std:endl;

else

std::cout << "两条销售记录的ISBN不同" << std::endl;

return 0;

}

练习1.22:编写程序,读取多个具有相同ISBN的销售记录,输出所有记录的和。

出题思路:练习在处理数据流的过程中“状态”(是否是相同的ISBN)的保存和变迁。

解答:

#include <iostream>

#include "Sales_item.h"

int main()

{

Sales_item total trans;

std::cout << "请输入几条ISBN相同的销售记录:" << std::endl;

if (std::cin >> total){

while (std::cin >> trans)

if (compareIsbn(total trans)) // ISBN相同

total = total + trans;

else { // ISBN不同

std::cout << "ISBN不同" << std::endl;

return -1;

}

std::cout << "汇总信息:ISBN、售出本数、销售额和平均售价为" << total << std::endl;

}

else {

std::cout << "没有数据" << std::endl;

return -1;

}

return 0;

}


普通的冒险故事提示您:看后求收藏(卧龙小说网http://www.wolongxs.com),接着再看更方便。

好书推荐:《我的剧本世界在自主运行》《我是舰娘》《我的师妹是妖女》《交错世界之学院都市》《认清现实后,她们开始追夫火葬场》《好徒儿你就饶了为师伐》

目录